Skip to content

chore: remove production host details from public sources - #926

Closed
kittors wants to merge 12 commits into
mainfrom
chore/scrub-public-host
Closed

chore: remove production host details from public sources#926
kittors wants to merge 12 commits into
mainfrom
chore/scrub-public-host

Conversation

@kittors

@kittors kittors commented Aug 19, 2026

Copy link
Copy Markdown
Owner

Same scrub as #925, targeting default branch so GitHub code search stops indexing the live host.

kittors and others added 12 commits August 12, 2026 20:21
…model ID" hints

Three sources of the same complaint — the console showing an "alias" identical to
the name already on screen.

OverflowTooltip gated on `scrollWidth > clientWidth`. Both are rounded to
integers, so a 188.4px label in a 188px box reports a 1px overflow while
rendering in full with no ellipsis, and the tooltip opened repeating the visible
text. Add a 1px tolerance, matching what scrollMetrics.ts already does for the
same rounding.

ModelTag set a native `title` equal to the model id, stacking a browser tooltip
on top of the managed one with the same content. Only set it when a caller passes
one; truncating call sites already wrap the tag in OverflowTooltip.

The request log raised a "real model ID" hint whenever the upstream name differed
as a string. An account alias only adds a routing segment — `ollama/…:0731` for
upstream `…:0731` — so every row of an aliased provider carried the hint. Compare
model identity instead. The backend now avoids recording those names, but logs
are kept for months, so the UI normalizes historical rows too.

Provider model chips move to OverflowTooltip on the same principle: when the chip
fits, its tooltip only repeated the mapping already visible.

Model plaza source summaries are deliberately unchanged: that line is catalog
information about which id a source serves, not a per-row runtime hint.

Extracting the model cell into RequestLogModelCell also brings
requestLogsShared.tsx down from 1020 to 989 lines; baseline updated to lock it in.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
fix(ui): stop repeating model names as tooltips and alias-only "real model ID" hints
… block

Two things the console was missing.

Curl examples rendered as flat, unstyled text. The repo already had a tiny
hand-written shell tokenizer on the landing page, written precisely to avoid
dragging react-syntax-highlighter's 790KB vendor chunk in for a single block. It
moves to @code-proxy/ui as CodeBlock so the landing page, the image page and the
new video page all read the same.

The new Video Models page mirrors the image one: how-to-call docs with a
text-to-video / image-to-video switch, request and response tables, and a test
panel. The docs show both halves of the call — submit and poll — because the
polling step is the one callers miss, and generation is asynchronous upstream.
The test panel is synchronous to watch: the server task absorbs the polling, so
the panel waits and then plays the clip.

Image-page tests move from getByText on the snippet to assertions on the block's
textContent: highlighting splits the text across token spans, which is also why
CodeBlock carries a data-code-block hook.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The unit tests run in jsdom, which has no layout and no CSS, so neither the
highlighted snippet nor the model catalog wiring was actually exercised. A
browser spec caught the latter: the catch-all management mock shadowed the models
route (Playwright matches the most recently registered route first), leaving the
test panel permanently disabled — the same shape of failure a real deployment
would show if the endpoint 404'd.

Not tagged @critical, so it stays out of the per-PR smoke.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
feat(video): add the video models page and share the highlighted code block
…nu its icon

The page offered a live "generate" button regardless of whether the tenant had an
xAI account, so the only feedback was the router's "auth_not_found: no auth
available" — true, but not actionable. The models endpoint now reports per-tenant
availability, and the page disables the action and names what is missing.
Availability absent from the response (older server) does not disable anything.

The sidebar entry fell back to the generic circle because the icon map had no
"video" key; the seed menu has always asked for one.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
fix(video): grey out generation without a credential, and give the menu its icon
…sage

Command Code joins the channels that show plan windows on their cards, but it is
the first one that needs nothing from the operator beyond the API key: its
credits endpoint authenticates with the same key that serves inference, so the
card fills in without a dashboard cookie to paste and without one to expire. The
key editor says so instead of showing a cookie field that would do nothing.

Adding it also removed the reason it was hard to add. The four usage-reporting
channels each carried their own near-identical copy of the same card tree, and
the page they lived in was frozen at its size baseline. They now share
ProviderUsageTabContent, and the usage/model-access maps moved into
provider-usage-config, which took ProvidersPageContent from 1845 to 1651 lines —
a channel now costs a call site rather than another 65-line copy.

The one baseline that moved is modelAvailability, by two lines: the channel
list there is a registry of every provider, so registering a new one is what
those lines are. features/ cannot import from pages/, and every way of deriving
the set instead of listing it came out longer once formatted.

Model definitions come from the relay, which fetches Command Code's public
catalog — no credential required — so the channel's model list stays current
without a frontend release.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
feat(providers): add the Command Code channel with cookie-free plan usage
Keep landing fallbacks, tests, and workflows on example.com / documentation IPs so the live relay host is not in this public repo.
@kittors

kittors commented Aug 19, 2026

Copy link
Copy Markdown
Owner Author

Wrong base: this would merge all of dev into main. Replacing with a main-only scrub cherry-pick.

@kittors kittors closed this Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant